home *** CD-ROM | disk | FTP | other *** search
/ SGI ONC3 NFS v2 / SGI ONC3 NFS v2.iso / dist6.4 / pcnfsd.idb / usr / share / catman / p_man / cat8 / pcnfsd.z / pcnfsd
Text File  |  1996-03-12  |  11KB  |  199 lines

  1.  
  2.  
  3.  
  4. PPPPCCCCNNNNFFFFSSSSDDDD((((8888))))                                                            PPPPCCCCNNNNFFFFSSSSDDDD((((8888))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      pcnfsd - (PC)NFS authentication and print request server
  10.  
  11. SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  12.      ////uuuussssrrrr////eeeettttcccc////rrrrppppcccc....ppppccccnnnnffffssssdddd
  13.  
  14. AAAAVVVVAAAAIIIILLLLAAAABBBBIIIILLLLIIIITTTTYYYY
  15.      This program is freely redistributable.
  16.  
  17. DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  18.      ppppccccnnnnffffssssdddd is an RPC server that supports ONC clients on PC (DOS, OS/2,
  19.      Macintosh, and other) systems. This page describes version two of the
  20.      ppppccccnnnnffffssssdddd server.
  21.  
  22.      rrrrppppcccc....ppppccccnnnnffffssssdddd may be started from ////eeeettttcccc////rrrrcccc....llllooooccccaaaallll or by the iiiinnnneeeettttdddd(8)
  23.      superdaemon. It reads the configuration file ////eeeettttcccc////ppppccccnnnnffffssssdddd....ccccoooonnnnffff if present,
  24.      and then services RPC requests directed to program number 150001. This
  25.      release of the ppppccccnnnnffffssssdddd daemon supports both version 1 and version 2 of the
  26.      pcnfsd protocol. Consult the rrrrppppccccggggeeeennnn source file ppppccccnnnnffffssssdddd....xxxx for details of
  27.      the protocols.
  28.  
  29.      The requests serviced by ppppccccnnnnffffssssdddd fall into three categories:
  30.      authentication, printing, and other. Only the authentication and printing
  31.      services have administrative significance.
  32.  
  33. AAAAUUUUTTTTHHHHEEEENNNNTTTTIIIICCCCAAAATTTTIIIIOOOONNNN
  34.      When ppppccccnnnnffffssssdddd receives a PPPPCCCCNNNNFFFFSSSSDDDD____AAAAUUUUTTTTHHHH or PPPPCCCCNNNNFFFFSSSSDDDD2222____AAAAUUUUTTTTHHHH request, it will "log
  35.      in" the user by validating the username and password and returning the
  36.      corresponding uid, gids, home directory, and umask. If ppppccccnnnnffffssssdddd was built
  37.      with the WWWWTTTTMMMMPPPP compile-time option, it will also append a record to the
  38.      wwwwttttmmmmpppp(5) data base. If you do not wish to record PC "logins" in this way,
  39.      you should add a line of the form
  40.  
  41.           wwwwttttmmmmpppp ooooffffffff
  42.  
  43.      to the ////eeeettttcccc////ppppccccnnnnffffssssdddd....ccccoooonnnnffff file.
  44.  
  45.      By default, ppppccccnnnnffffssssdddd will only allow authentication or print requests for
  46.      users with uids in the range 101 to 60002. (This corresponds in SVR4 to
  47.      the range for non-system accounts.) To override this, you may add a line
  48.      of the form
  49.  
  50.           uuuuiiiiddddrrrraaaannnnggggeeee _r_a_n_g_e[,_r_a_n_g_e]...
  51.  
  52.      to the ////eeeettttcccc////ppppccccnnnnffffssssdddd....ccccoooonnnnffff file. Here, each _r_a_n_g_e is of the form
  53.  
  54.           _u_i_d
  55.  
  56.      or
  57.  
  58.           _u_i_d-_u_i_d
  59.  
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. PPPPCCCCNNNNFFFFSSSSDDDD((((8888))))                                                            PPPPCCCCNNNNFFFFSSSSDDDD((((8888))))
  71.  
  72.  
  73.  
  74.      indicating an inclusive range.
  75.  
  76. PPPPRRRRIIIINNNNTTTTIIIINNNNGGGG
  77.      ppppccccnnnnffffssssdddd supports a printing model based on the use of NFS to transfer the
  78.      actual print data from the client to the server. The client system issues
  79.      a PPPPCCCCNNNNFFFFSSSSDDDD____PPPPRRRR____IIIINNNNIIIITTTT or PPPPCCCCNNNNFFFFSSSSDDDD2222____PPPPRRRR____IIIINNNNIIIITTTT request, and the server returns the
  80.      path to a spool directory which the client may use and which is exported
  81.      by NFS.  ppppccccnnnnffffssssdddd creates a subdirectory for each of its clients: the
  82.      parent directory is normally ////uuuussssrrrr////ssssppppoooooooollll////ppppccccnnnnffffssss and the subdirectory is the
  83.      hostname of the client system.  If you wish to use a different parent
  84.      directory, you should add a line of the form
  85.  
  86.           ssssppppoooooooollllddddiiiirrrr _p_a_t_h
  87.  
  88.      to the ////eeeettttcccc////ppppccccnnnnffffssssdddd....ccccoooonnnnffff file.
  89.  
  90.      Once a client has mounted the spool directory using NFS and has
  91.      transferred print data to a file in this directory, it will issue a
  92.      PPPPCCCCNNNNFFFFSSSSDDDD____PPPPRRRR____SSSSTTTTAAAARRRRTTTT or PPPPCCCCNNNNFFFFSSSSDDDD2222____PPPPRRRR____SSSSTTTTAAAARRRRTTTT request. ppppccccnnnnffffssssdddd handles this, and
  93.      most other print-related requests, by constructing a command based on the
  94.      printing services of the server operating system and executing the
  95.      command using the identity of the PC user. Since this involves set-user-
  96.      id privileges, ppppccccnnnnffffssssdddd must be run as root.
  97.  
  98.      Every print request from the client includes the name of the printer
  99.      which is to be used. In SunOS, this name corresponds to a printer
  100.      definition in the ////eeeettttcccc////pppprrrriiiinnnnttttccccaaaapppp(5) database. If you wish to define a
  101.      non-standard way of processing print data, you should define a new
  102.      printer and arrange for the client to print to this printer. There are
  103.      two ways of setting up a new printer.  The first involves the addition of
  104.      an entry to ////eeeettttcccc////pppprrrriiiinnnnttttccccaaaapppp(5) and the creation of filters to perform the
  105.      required processing. This is outside the scope of this discussion. In
  106.      addition, ppppccccnnnnffffssssdddd includes a mechanism by which  you can define virtual
  107.      printers known only to ppppccccnnnnffffssssdddd clients. Each printer is defined by a line
  108.      in the ////eeeettttcccc////ppppccccnnnnffffssssdddd....ccccoooonnnnffff file of the following form
  109.  
  110.           pppprrrriiiinnnntttteeeerrrr _n_a_m_e _a_l_i_a_s-_f_o_r _c_o_m_m_a_n_d
  111.  
  112.      _n_a_m_e is the name of the printer you want to define. _a_l_i_a_s-_f_o_r is the name
  113.      of a "real" printer which corresponds to this printer. For example, a
  114.      request to display the queue for _n_a_m_e will be translated into the
  115.      corresponding request for the printer _a_l_i_a_s-_f_o_r. If you have defined a
  116.      printer in such a way that there is no "real" printer to which it
  117.      corresponds, use a single "-" for this field. (See the definition of the
  118.      printer tttteeeesssstttt below for an example.) _c_o_m_m_a_n_d is a command which will be
  119.      executed whenever a file is printed on _n_a_m_e.  This command is executed by
  120.      the Bourne shell, ////bbbbiiiinnnn////sssshhhh using the ----cccc option. For complex operations you
  121.      should construct an executable shell program and invoke that in _c_o_m_m_a_n_d.
  122.      Within _c_o_m_m_a_n_d the following tokens will be replaced:
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.                                                                         PPPPaaaaggggeeee 2222
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136. PPPPCCCCNNNNFFFFSSSSDDDD((((8888))))                                                            PPPPCCCCNNNNFFFFSSSSDDDD((((8888))))
  137.  
  138.  
  139.  
  140.      TTTTooookkkkeeeennnn     SSSSuuuubbbbssssttttiiiittttuuuuttttiiiioooonnnn
  141.  
  142.      Replaced by the full path name of the print data file. When
  143.                the command has been executed, the file will be unlinked.
  144.  
  145.      Replaced by the username of the user logged in to the client system.
  146.  
  147.      Replaced by the host name of the client system.
  148.  
  149.      Consider the following example ////eeeettttcccc////ppppccccnnnnffffssssdddd....ccccoooonnnnffff file:
  150.  
  151.           printer rotated lw /usr/local/bin/enscript -2r $FILE
  152.           printer test - /usr/bin/cp $FILE /usr/tmp/$HOST-$USER
  153.  
  154.      If a client system prints a job on the printer rrrroooottttaaaatttteeeedddd the utility
  155.      eeeennnnssssccccrrrriiiipppptttt will be invoked to pre-process the file $FILE. In this case, the
  156.      ----2222rrrr option causes the file to be printed in two-column rotated format on
  157.      the default PostScriptr printer.  If the client requests a list of the
  158.      print queue for the printer rrrroooottttaaaatttteeeedddd the ppppccccnnnnffffssssdddd daemon will translate this
  159.      into a request for a listing for the printer llllwwww....
  160.  
  161.      The printer tttteeeesssstttt is used only for testing. Any file sent to this printer
  162.      will be copied into ////uuuussssrrrr////ttttmmmmpppp.... Any request to list the queue, check the
  163.      status, etc. of printer tttteeeesssstttt will be rejected because the _a_l_i_a_s-_f_o_r has
  164.      been specified as "-".
  165.  
  166. RRRREEEECCCCOOOONNNNFFFFIIIIGGGGUUUURRRRAAAATTTTIIIIOOOONNNN
  167.      ppppccccnnnnffffssssdddd will detect when printers are added or deleted and will rebuild
  168.      its list of valid printers. To do this, it checks the modification time
  169.      of ////eeeettttcccc////pppprrrriiiinnnnttttccccaaaapppp for BSD-style systems or ////eeeettttcccc////llllpppp////pppprrrriiiinnnntttteeeerrrrssss for SVR4-based
  170.      systems. However, it does not monitor the file ////eeeettttcccc////ppppccccnnnnffffssssdddd....ccccoooonnnnffff for
  171.      updates; if you change this file, it is still necessary to kill and
  172.      restart ppppccccnnnnffffssssdddd in order that the changes can take effect.
  173.  
  174. FFFFIIIILLLLEEEESSSS
  175.      ////eeeettttcccc////ppppccccnnnnffffssssdddd....ccccoooonnnnffff
  176.  
  177. SSSSEEEEEEEE AAAALLLLSSSSOOOO
  178.      llllpppp(1) llllppppssssttttaaaatttt(1) llllppppqqqq(1)
  179.  
  180.  
  181.  
  182.  
  183.  
  184.  
  185.  
  186.  
  187.  
  188.  
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195.                                                                         PPPPaaaaggggeeee 3333
  196.  
  197.  
  198.  
  199.